package com.juzi.statickeyword;

public class User {
    /**
     * 在线人数,
     * 注意：static修饰的成员变量；静态成员变量，只在内存中有一份，可以被共享
     */
    public static int onlineNumber = 161;
    /**
     * 实例成员变量，没有static修饰，属于每个对象，必须采用对象名，访问
     */
    private String name;
    private int age;

    public static void main(String[] args) {


        //目标：理解static修饰成员变量的作用和访问特点
        //1、类名.静态成员变量
        System.out.println(User.onlineNumber);

        //也可以用对象访问，但是官方不提倡，静态成员变量，所属于类，用类名访问更好
//        User.name;//name属于类的每个对象，用类直接访问name会报错
        User u = new User();
        //实例成员变量可以用直接用对象访问
        //对象名.实例成员变量
        u.name = "桔子";
        u.age = 22;
        u.onlineNumber++;
        //注意：同一个类中，静态成员变量的访问可以省略类名
        System.out.println(u.onlineNumber);
        onlineNumber++;
        System.out.println(onlineNumber);

    }
}

